/**
 * shared_prt可以共享他指向他对象,shared_ptr指针中有计数器use_count当有n个指针指向同一个资源是计数器就是n
 * 当计数器use_count()为0时指针就会释放管理的资源
*/
#include <iostream>
#include <memory>
using namespace std;
class person{
    public:
    string name;
    person(string m_name):name(m_name){}
    void show(){
        cout<<"person类对象"<<endl;
        cout<<"name="<<name<<endl;
    }
};
int main()
{
    shared_ptr<person> pu1(new person("张三"));
    pu1->show();
    shared_ptr<person> pu2(pu1);
    cout<<"pu1.use_count="<<pu1.use_count()<<endl;//显示引用计数的值--当值为0时就会释放掉shared_ptr管理的对象
    return 0;
}